1
동시성 아키텍처 설계: 다섯 질문 프레임워크
AI019Lesson 9
00:00

엘릭서에서 동시성을 고려한 아키텍처 설계는 단순한 프로세스 생성을 넘어서며, 다음을 달성하기 위해 체계적인 방법론이 필요합니다 99.9999999% 신뢰성 (아홉 자릿수). 이는 약 30년에 한 번 약 1초의 장애정도입니다. 이러한 기준에 도달하기 위해 우리는 다섯 질문 프레임워크를 사용합니다.

구조적 히어리스틱

OTP 코드를 한 줄도 쓰기 전에, 상태가 있는 문제를 관리 가능한 기본 요소로 분해하기 위해 다음 질문들을 활용하세요:

  • 환경 및 제약 조건: 단일 노드인가요? 글로벌 클러스터인가요? 메모리/입출력 제약은 무엇인가요?
  • 중심 포인트: 데이터는 어디에 저장되나요? 상태를 '소유'하는 주체는 누구인가요(예: 결과 레더)?
  • 실행 시 특성: 동시 요청 수는 몇 개입니까? 처리는 CPU 중심인지, 입출력 중심인지요?
  • 보호 대상: 어떤 상태는 반드시 유지되어야 하나요? 어떤 것은 손실해도 재시작할 수 있는지 여부는 어떻게 판단하나요?
  • 초기화: 트리를 어떻게 초기화합니까? 어떤 서비스들이 다른 서비스에 의존하나요?
99.9999999%신뢰성환경중심 포인트실행 시보호실행

이 질문들을 제약 조건으로 간주함으로써, 명확한 계층 구조 없이 모든 프로세스가 서로 통신하는 '큰 덩어리의 점토' 형태의 동시성 문제를 방지할 수 있습니다.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>